﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Text;
using Edge.Business.Entities;
using Edge.Common.Utils;
using Iesi.Collections.Generic;
using Shop.Business.Domain.Customers;

namespace Shop.Business.Domain.Catalog.Parameter
{
    /// <summary>
    /// Users object for NHibernate mapped table 'parameter'.
    /// </summary>
    [Serializable]
    public class Parameter : BaseEntity<int>
    {

        protected string name;
        protected string description;
        protected bool isAtomic;
        protected bool isSearch;
        protected bool isMenu;
        protected ISet<ParameterValue> values;
        protected ICollection<ParameterValue> valuesForProduct;
        protected ICollection<ParameterValue> valuesForGroup;

        public virtual string Name
        {
            get { return name; }
            set { name = value; }
        }

        public virtual string Description
        {
            get { return description; }
            set { description = value; }
        }

        public virtual bool IsAtomic
        {
            get { return isAtomic; }
            set { isAtomic = value; }
        }

        public virtual bool IsSearch
        {
            get { return isSearch; }
            set { isSearch = value; }
        }

        public virtual ISet<ParameterValue> Values
        {
            get { return values; }
            set { values = value; }
        }

        public virtual ICollection<ParameterValue> ValuesForProduct
        {
            get { return valuesForProduct; }
            set { valuesForProduct = value; }
        }

        public virtual ICollection<ParameterValue> ValuesForGroup
        {
            get { return valuesForGroup; }
            set { valuesForGroup = value; }
        }

        public virtual bool IsMenu
        {
            get { return isMenu; }
            set { isMenu = value; }
        }

    }
}